/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package net.gis.eemc.dao;

import java.util.List;

import net.gis.eemc.domain.Faculty;
import net.gis.eemc.domain.Department;
import net.gis.eemc.domain.Speciality;

/**
 *
 * @author Sergey
 */
public interface SpecialityDAO {

    public void addSpeciality(Speciality speciality);

    public List<Speciality> listSpeciality();

    /**
     *
     * @param dep_id
     * @return Returns List of Speciality for Department with dep_id
     */
    public List<Speciality> listSpeciality(Integer dep_id);

    public List<Speciality> listSpeciality(Department dep);

    public List<Speciality> listSpeciality(Faculty fac);

    public void removeSpeciality(Integer id);

    public void removeSpeciality(Speciality spec);

    public void updateSpeciality(Speciality spec);

    public List<Speciality> getSpecialityWithTitle(String Title);

    public List<Speciality> getSpecialityWithShortName(String shortName);

    public List<Speciality> getSpecialityWithRefNumber(String refNumber);

    public Speciality getSpecialityWithID(Integer id);
}
